home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / workbench / libs / maestixlib.lha / Maestix / include / libraries / maestix.i < prev   
Text File  |  1995-06-26  |  7KB  |  209 lines

  1.     IFND    LIBRARIES_MAESTIX_I
  2. LIBRARIES_MAESTIX_I     SET     1
  3.  
  4. **
  5. **      Maestix Library References  -  V38
  6. **
  7. **      © 1995 Richard Körber
  8. **
  9.  
  10.         IFND    EXEC_TYPES_I
  11.         INCLUDE 'exec/types.i'
  12.         ENDC
  13.  
  14.         IFND    UTILITY_TAGITEM_I
  15.         INCLUDE 'utility/tagitem.i'
  16.         ENDC
  17.  
  18.         IFND    EXEC_PORTS_I
  19.         INCLUDE 'exec/ports.i'
  20.         ENDC
  21.  
  22.         IFND    EXEC_LISTS_I
  23.         INCLUDE 'exec/lists.i'
  24.         ENDC
  25.  
  26.         IFND EXEC_LIBRARIES_I
  27.         INCLUDE 'exec/libraries.i'
  28.         ENDC
  29.  
  30.  
  31. *------------------------------------------------------------------------*
  32. * Generic library informations
  33.  
  34. MAESTIXNAME     MACRO
  35.         dc.b    "maestix.library",0
  36.         ENDM
  37.  
  38. MAESTIXVERSION  EQU     39
  39.  
  40.     STRUCTURE MaestixBase,0
  41.     STRUCT  mxb_LibNode,LIB_SIZE
  42.     LABEL   mxb_SIZEOF
  43.  
  44.  
  45. *------------------------------------------------------------------------*
  46. * MaestroBase structure
  47.  
  48.     STRUCTURE MaestroBase,0
  49.     WORD    maba_Dummy       ;PRIVATE
  50.     LABEL   maba_SIZEOF
  51.  
  52.  
  53. *------------------------------------------------------------------------*
  54. * DataMessage
  55.  
  56.     STRUCTURE DataMessage,0
  57.     STRUCT  dmn_Message,MN_SIZE     ;struct Message
  58.     APTR    dmn_BufPtr      ;pointer to public buffer memory
  59.     ULONG   dmn_BufLen      ;length of buffer memory (bytes)
  60.     LABEL   dmn_SIZEOF
  61.  
  62.  
  63. *------------------------------------------------------------------------*
  64. * Tag definitions
  65.  
  66. _MSTXTAG        EQU     $CD414553       ;Maestix tag base ("MAES")
  67.  
  68. * SetMaestro() tags
  69. *
  70. MTAG_Input      EQU     _MSTXTAG+$00    ;Input? Def. INPUT_STD
  71. MTAG_Output     EQU     _MSTXTAG+$01    ;Output? Def. OUTPUT_BYPASS
  72. MTAG_SetCSB     EQU     _MSTXTAG+$02    ;Direct CSB access
  73. MTAG_SetUDB     EQU     _MSTXTAG+$03    ;Direct UDB access
  74. MTAG_Studio     EQU     _MSTXTAG+$04    ;Studio mode? (TRUE/FALSE)
  75. MTAG_CopyProh   EQU     _MSTXTAG+$05    ;Copy protection?
  76. MTAG_Emphasis   EQU     _MSTXTAG+$06    ;Emphasis
  77. MTAG_Source     EQU     _MSTXTAG+$07    ;Source category code
  78. MTAG_Rate       EQU     _MSTXTAG+$08    ;Output rate
  79. MTAG_Validity   EQU     _MSTXTAG+$09    ;Validity flag (TRUE/FALSE)
  80. MTAG_ResetUDB   EQU     _MSTXTAG+$0A    ;Reset UDB
  81. MTAG_ResetLSA   EQU     _MSTXTAG+$0C    ;Reset Local Sample Address
  82.  
  83. * StartRealtime() tags
  84. *
  85. MTAG_Effect     EQU     _MSTXTAG+$0D    ;effect number (see below)
  86. MTAG_A0         EQU     _MSTXTAG+$0E    ;parameter -> A0
  87. MTAG_A1         EQU     _MSTXTAG+$0F    ;parameter -> A1
  88. MTAG_D2         EQU     _MSTXTAG+$10    ;parameter -> D2
  89. MTAG_D3         EQU     _MSTXTAG+$11    ;parameter -> D3
  90. MTAG_CustomCall EQU     _MSTXTAG+$12    ;pointer to custom call
  91.  
  92.  
  93. *------------------------------------------------------------------------*
  94. * Tag values for MTAG_Input
  95.  
  96. INPUT_STD       EQU     0               ;User selected input
  97. INPUT_OPTICAL   EQU     1               ;optical input
  98. INPUT_COAXIAL   EQU     2               ;coaxial input
  99. INPUT_SRC48K    EQU     3               ;48kHz internal source
  100.  
  101.  
  102. *------------------------------------------------------------------------*
  103. * Tag values for MTAG_Output
  104.  
  105. OUTPUT_BYPASS   EQU     0               ;Bypass
  106. OUTPUT_INPUT    EQU     1               ;from input
  107. OUTPUT_FIFO     EQU     2               ;from FIFO
  108.  
  109.  
  110. *------------------------------------------------------------------------*
  111. * Tag values for MTAG_CopyProh
  112.  
  113. CPROH_OFF       EQU     0               ;No protection requested
  114. CPROH_ON        EQU     1               ;Copy protection requested
  115. CPROH_PROHIBIT  EQU     2               ;Copy prohibited
  116. CPROH_INPUT     EQU     3               ;As input
  117.  
  118.  
  119. *------------------------------------------------------------------------*
  120. * Tag values for MTAG_Emphasis
  121.  
  122. EMPH_OFF        EQU     0               ;no emphasis
  123. EMPH_50us       EQU     1               ;50/15µs
  124. EMPH_CCITT      EQU     2               ;CCITT J.17 (studio only)
  125. EMPH_MANUAL     EQU     3               ;Manuell (studio only)
  126. EMPH_INPUT      EQU     4               ;As input
  127. EMPH_ON         EQU     EMPH_50us
  128.  
  129.  
  130. *------------------------------------------------------------------------*
  131. * Tag values for MTAG_Source
  132.  
  133. SRC_INPUT       EQU     0               ;As input
  134. SRC_CD          EQU     $01             ;CD
  135. SRC_DAT         EQU     $03             ;DAT
  136. SRC_DSR         EQU     $0C             ;DSR
  137. SRC_ADCONV      EQU     $06             ;ADC
  138. SRC_INSTR       EQU     $05             ;Instrument
  139.  
  140.  
  141. *------------------------------------------------------------------------*
  142. * Tag values for MTAG_Rate
  143.  
  144. RATE_32000      EQU     0               ;Rate 32000 Hz
  145. RATE_44100      EQU     1               ;Rate 44100 Hz
  146. RATE_48000      EQU     2               ;Rate 48000 Hz
  147. RATE_48000MANU  EQU     3               ;Rate 48000 Hz Manual
  148. RATE_INPUT      EQU     4               ;As input
  149.  
  150.  
  151. *------------------------------------------------------------------------*
  152. * Realtime FX codes
  153.  
  154. RFX_Muting      EQU     0               ;mute incoming signal
  155. RFX_Bypass      EQU     1               ;no manipulation (default)
  156. RFX_ChannelSwap EQU     2               ;swap left and right
  157. RFX_LeftOnly    EQU     3               ;mute right channel
  158. RFX_RightOnly   EQU     4               ;mute left channel
  159. RFX_Mono        EQU     5               ;mono
  160. RFX_Surround    EQU     6               ;surround
  161. RFX_Volume      EQU     7               ;volume
  162.                     ;MTAG_D2: left volume (0..256)
  163.                     ;MTAG_D3: right volume (0..256)
  164. RFX_Karaoke     EQU     8               ;filters out the singer
  165. RFX_Foregnd     EQU     9               ;filters out the surround info
  166. RFX_Spatial     EQU     10              ;virtual shifting of the speakers
  167.                     ;MTAG_D2: shift factor (0..256)
  168.                     ;         optimum: about 64
  169. RFX_Echo        EQU     11              ;echo effect
  170.                     ;MTAG_D2: entry volume (0..256)
  171.                     ;MTAG_D3: fade volume (0..256)
  172.                     ;MTAG_A0: pointer to mrtor structure
  173. RFX_Mask        EQU     12              ;mask/quantisize
  174.                     ;MTAG_D2: left mask word
  175.                     ;MTAG_D3: right mask word
  176. RFX_Offset      EQU     13              :adding dc offset
  177.                     ;MTAG_D2: left offset (32767..-32768)
  178.                     ;MTAG_D3: right offset (32767..-32768)
  179.  
  180. *------------------------------------------------------------------------*
  181. * Torus structure for RFX_Echo
  182.  
  183.     STRUCTURE MRTorus,0
  184.     APTR    mrtor_PointerL          ;Pointer to left data buffer
  185.     APTR    mrtor_PointerR          ;Pointer to right data buffer
  186.     ULONG   mrtor_Size              ;Size of these buffers (bytes)
  187.     ULONG   mrtor_Offset            ;current offset (init with NULL)
  188.     LABEL   mrtor_SIZEOF
  189.  
  190. *------------------------------------------------------------------------*
  191. * GetStatus() values
  192.  
  193. MSTAT_TFIFO     EQU     0               ;Transmit FIFO Status    (s.b.)
  194. MSTAT_RFIFO     EQU     1               ;Receive FIFO Status     (s.b.)
  195. MSTAT_Signal    EQU     2               ;Signal on input?        (BOOL)
  196. MSTAT_Emphasis  EQU     3               ;Signal uses emphasis?   (BOOL)
  197. MSTAT_DATsrc    EQU     4               ;DAT-Source?             (BOOL)
  198. MSTAT_CopyProh  EQU     5               ;Copy protection?        (BOOL)
  199. MSTAT_Rate      EQU     6               ;Rate                    (ULONG)
  200. MSTAT_UDB       EQU     7               ;get current UDB         (UBYTE)
  201.  
  202. * Values for TFIFO & RFIFO
  203. *
  204. FIFO_Off        EQU     0               ;FIFO ist aus
  205. FIFO_Running    EQU     1               ;FIFO läuft
  206. FIFO_Error      EQU     2               ;FIFO lief über
  207.  
  208.     ENDC
  209.